#ifndef CLASSEDITFORM_H
#define CLASSEDITFORM_H

#include "EditFormWrapper.h"
#include "BaseEditForm.h"
#include <D20ClassModel.h>
#include <D20CampaignModel.h>


namespace Ui {
    class ClassEditForm;
}

class ClassEditFormBase : public QWidget, public BaseEditForm
{
    Q_OBJECT

public:

    virtual void updateData();


protected:

    ClassEditFormBase(ItemRoot *root, QWidget *parent = 0);
    ~ClassEditFormBase();

    void openCampaign(const QString& file_name);


protected slots:

    void onFileOpened();


private:

    Ui::ClassEditForm *ui;
    D20CampaignModel* m_campaignModel;


private slots:
    void on_comboBoxCampaign_currentIndexChanged(int index);
    void on_pushButtonOpenCampaign_clicked();
};


typedef EditFormWrapper<ClassEditFormBase> ClassEditForm;

#endif // CLASSEDITFORM_H
